package com.zhijian.wharf.entity.po;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;

/**
 * 系统菜单信息
 *
 * @author Auto Generator
 * @date 2022-01-22 15:30:23
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Api(tags = "系统菜单信息")
public class Menu {
    /**
     * 自增主键
     */
    @ApiModelProperty(value = "自增主键", hidden = true)
    private Long id;

    /**
     * 名称
     */
    @ApiModelProperty("名称")
    @NotBlank(message = "名称不能为空")
    private String name;

    /**
     * 描述
     */
    @ApiModelProperty("描述")
    private String msg;

    /**
     * 菜单字体图标url
     */
    @ApiModelProperty("菜单字体图标url")
    private String icon;

    /**
     * 访问url
     */
    @ApiModelProperty("访问url")
    private String url;

    /**
     * 路由URL
     */
    @ApiModelProperty("路由URL")
    private String routeUrl;

    /**
     * 上级菜单Id
     */
    @ApiModelProperty("上级菜单Id")
    @NotNull(message = "上级菜单Id不能为空")
    private Long parentId;

    /**
     * 排序
     */
    @ApiModelProperty("排序")
    @NotNull(message = "排序不能为空")
    private Integer sort;

    /**
     * 是否展示，0：是，1：否
     */
    @ApiModelProperty("是否展示，0：是，1：否")
    private Byte weatherDisplay;

    /**
     * 是否有子元素，0：是，1：否
     */
    @ApiModelProperty("是否有子元素，0：是，1：否")
    private Byte weatherHasChild;

    /**
     * 超链接URL
     */
    @ApiModelProperty("超链接URL")
    private String linkUrl;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间", hidden = true)
    private Date createTime;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间", hidden = true)
    private Date updateTime;
}